package com.bsj.power.common.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.bsj.power.common.def.entity.personnel.Personnel;
import com.bsj.power.common.def.vo.KeyValueVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author LiJiaXin
 * @version 1.0.0
 * @description PersonnelMapper
 * @time 2024/4/18 17:09
 */
public interface PersonnelMapper extends BaseMapper<Personnel> {

    /**
     * 校验身份证号是否存在
     *
     * @param idCardNo
     * @param personnelId
     * @return int
     * @author ljx
     * @time 2024/5/9 20:24
     */
    int checkIsExist(@Param("idCardNo") String idCardNo, @Param("personnelId") Integer personnelId);

    /**
     * 模糊搜索
     *
     * @param value
     * @param type
     * @return java.util.List<com.bsj.power.common.def.vo.KeyValueVO>
     * @author ljx
     * @time 2024/5/10 14:20
     */
    List<KeyValueVO> fuzzySearch(@Param("value") String value, @Param("type") Integer type, @Param("empNoList") List<String> empNoList);

    /**
     * 批量添加
     *
     * @param personnelList
     * @return java.lang.Integer
     * @author ljx
     * @time 2024/7/10 14:42
     */
    Integer batchAdd(@Param("personnelList") List<Personnel> personnelList);

    /**
     * 修改负责人信息
     *
     * @param personnelList
     * @return java.lang.Integer
     * @author ljx
     * @time 2024/8/26 10:42
     */
    Integer batchUpdate(@Param("personnelList")List<Personnel> personnelList);

    /**
     * 修改手机号
     *
     * @param updatePersonnelList
     * @return java.lang.Integer
     * @author ljx
     * @time 2024/9/2 12:05
     */
    Integer updatePhone(@Param("personnelList") List<Personnel> updatePersonnelList);

    /**
     * 根据人员编号查询工号
     *
     * @param extEventPersonNo
     * @return java.lang.String
     * @author ljx
     * @time 2024/12/30 11:31
     */
    String selectEmpNoByExtEventPersonNo(String extEventPersonNo);
}
